from functools import wraps

def exp_wraps(func):
    @wraps(func)
    def wrapped_function(*args, **kwargs):
        try:
            func(*args, **kwargs)
            print("function goes well......")
        except BaseException as erroes:
            print("function has an errors...")
            print(erroes)
        finally:
            print("function end with logs")
    return wrapped_function


@exp_wraps
def try_test():
    # 0/1
    1/0
    raise ValueError

if __name__ == '__main__':
    try_test()
